#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QButtonGroup>
#include "index.h"
#include "watch.h"
#include "set.h"
#include "about.h"
#include <QMouseEvent>


QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();
    void initUI();
    //设置鼠标按下可移动窗口的区域，在子窗口中必须设置该区域
    void setAreaMovable(const QRect rt);

protected:
    //鼠标按下，移动，以及释放事件

    void mousePressEvent(QMouseEvent*event);
    void mouseMoveEvent(QMouseEvent*event);
    void mouseReleaseEvent(QMouseEvent *event);




private:
    //创建按钮组，将几个侧边栏按钮组合
    QButtonGroup*m_button_group=nullptr;
    QRect m_areaMovable;//可移动窗口的区域，鼠标只有在该区域按下才能移动窗口
    bool m_bPressed;//鼠标按下标志（不分左右键）
    QPoint m_ptPress;//鼠标按下的初始位置

private:
    //ui
    Ui::Widget *ui;
    Index*index=nullptr;
    Set*set=nullptr;
    About*about=nullptr;
    Watch*watch=nullptr;





};
#endif // WIDGET_H
